#ifndef ORGANIZER_H
#define ORGANIZER_H
//  File:         Organizer.h
//  Author:       Scott Nordmann & Lauren Wallace
//  Description:  A class definition for the Organizer.
#include "User.h"
#include <string>
#include <vector>
#include <fstream>
#include "Entry.h"

class Organizer 
{
public:
	Organizer();
	~Organizer();

	void showMenu();

private:
	//UI
	void showLogInScreen();
	void showNotebookMenu();
	void showCalendarMenu();
	void showToDoListMenu();
	void showTagMenu();
	void showInboxMenu();

	//file handeling
	void startUp(std::ifstream& ifuser);
	void shutDown(std::ofstream& ofsave);

	//logging in
	bool logIn(const std::string& u, const std::string& pwd);
	bool createUser(const std::string& name, const std::string& pass, std::ifstream& ifsave);

	//admin tasks
	void showAdminMenu();
	void display()const;
	User* choiceDisplay();
	void createUser();
	void editUser();
	bool deleteUser(User& u);

	//messageing
	void deliverMail();//called when a user logs out
	
	User* currentUser;
	std::vector<User*> users;
};

#endif